Juke Introduction

What is Juke?

Juke is a simple, yet full featured program to play any type of multimedia file as well as music CDs. You can create and organize playlists easily by drag and drop with the Explorer.

Juke is primarily intended for providing background music while you work at the PC. Therefore it does not have a very fancy user inteface, but has lots of features to make your life easier, such as error tolerance, auto play, random play, repeat mode and auto shuffle. When minimized, Juke will be hidden entirely from your desktop. Only a small icon in the tray area of the taskbar reminds you of its presence.

Contacting the Author

email: wolo@wolosoft.com
homepage: http://www.wolosoft.com


What's New

What's in Juke 3.6?

These are the features that are new since Juke version 3.5

  • Support for DirectX Plug-Ins
  • Turkish, Dutch and Italian language interface
  • Support for Impulse Tracker (.it) files
  • Loop mode to repeat a single track
  • Explorer bar
  • Play tracks by double-click in the Explorer bar
  • Import playlists in M3U and PLS format
  • Customizable toolbars
  • Full support for Windows XP themes, including menus and toolbars
  • Priority selection
  • Video playback options, including full-screen mode


Shortcut Reference

Juke can be controlled very easily with One-Key shortcuts. The following list tells you which keyboard shortcuts are available and their corresponding menu item (if available).

Shift Key | Key | Action
 | A | ?/About
Ctrl | A | Edit/Redo
Ctrl | C | Edit/Copy
 | D | Move Down
Ctrl | E | Toggle Explorer Bar
 | F | View/Full Path
Ctrl | F | Playlist/Find
 | H | ?/Contents
 | I | Media/Intro Scan
 | L | Playlist/Total Length
Ctrl | L | Media/Loop Track
 | N | Next Track
Ctrl | N | File/New
 | O | Media/Options
Ctrl | O | File/Open
 | P | Media/Play
 | S | Stop
Ctrl | S | File/Save
 | T | View/Track Numbers
 | U | Move Up
 | V | Previous Track
Ctrl | V | Edit/Paste
 | X | Media/Mixer
Ctrl | X | Edit/Cut
Ctrl | Z | Edit/Undo
Alt | Back | Edit/Undo
 | Del | Edit/Clear
Ctrl | Del | Edit/Clear All
Alt | Del | File/Delete File
Shift | Del | Edit/Cut
 | F2 | File/Rename
 | F12 | File/Save As
 | Grey + | Playlist/Add All CD Tracks
 | Ins | Playlist/Add
Ctrl | Ins | Edit/Copy
Shift | Ins | Edit/Paste
Ctrl | Left | Rewind
Ctrl | Right | Fast Forward
 | Pause | Pause
Alt | Return | File/Rename


File Types

Supported file types

Juke is designed to be a player for all media files and music CD's. Since Juke supports the DirectShow standard, so that it can play all sorts of media files that are supported by Windows Media Player.

File type | Extensions | Required driver
Active Streaming | asf, asx | none
Audio CD | cda | none
FastTracker Module | xm | none
ImpulseTracker Module | it | none
MIDI Sequence | mid, rmi | none
Mini-Playlist | mpl | none
Module | mod | none
Wave Sound | wav | none
MPEG Audio | mp2, mp3, mpa, mpe, m1v | none
MPEG Video | mpg, mpeg, mpv, dat | none
Pause | pause | none
Ogg-Vorbis | ogg | MediaXW
ScreamTracker Module | s3m | none
Sound Clip | au, aif, snd | none
Video for Windows | avi | none
Windows Media | wma, wmv | none
Zipped IT Module | itz | none
Zipped Module | mdz | none


CD Player

Using Juke as CD player

How to add CD tracks to the playlist

Choose "Add All CD Tracks" form the "Playlist" menu to add all track of the currently loaded CD to the playlist. You can also drag CD tracks from the explorer into the Juke playlist.

Using track information

Juke uses the the CD database of the Windows CD-Player. Therefore you will see the real song names when you aready have entered them in Windows CD-Player. To change the name of a song or to enter information about a new CD, select a CD track in the playlist and press F2 or choose "Rename" from the "File" menu. This will open the CD database editor for the current CD.

Starting Juke automatically when a CD is inserted

Select "File Types..." from the "Media" menu. Then check the "Make Juke the default CD player" option. If you are running Juke from the StartUp program group, it is recommended to check also the "Use DDE" option for playlists.


JukeScript - Juke Automation Interface

JukeScript

JukeScript is a simple automation interface which enables you to control Juke from other applications. JukeScript can be used from Microsoft Visual Basic ® or any scripting language supported by Window Scripting Host, such as VBScipt, JScript (The Microsoft implementation of JavaScript) or Perl. The examples in this reference book use JScript.

The following JScript program plays one track with Juke. You should save it as "test.js" and run "wscript test.js" from a command propmt.

var app = WScript.CreateObject( "Juke.Application" );
if( app == null ) {
  WScript.Echo( "Juke is not installed" );
  WScript.Quit();
}

var playlist = app.Playlist;
playlist.RemoveAll();
playlist.Add( "P:\\Sound\\Files\\MP3\\Songs\\Mad World.mp3" );

app.Player.Stop();
app.Player.Play();

app.About();

Windows Scripting Host (wscript.exe or cscript.exe) are included with Windows 98. If you are using Windows 95 or Windows NT 4.0, you can download the package (wsh.exe) from the Microsoft web site.

Object Index

JukeScript © 1999 WoLoSoft International


JukeScript Object Index

Playlist
Juke playlist
Player
Play, Stop, Pause songs
Application
Controls the Juke application

JukeScript © 1999 WoLoSoft International


Application Object

Events none
Methods
About
Displays a dialog box with verion and copyright information
Properties
Player
Returns a Player object which can be used to control the playback of media streams.
Playlist
Returns a Playlist object which can be used to manipulate the Juke playlist.
Version
Returns a String indicating the current version of Juke. The current version of Juke v3.5 returns the string "3.5".
Visible
Returns a Boolean value indicating if the Juke application window is visible on the desktop or hidden.


Application.About method

About

Method of Application.

Displays a dialog box with verion and copyright information.

Parameters | none
Syntax | Application.About()
Remarks | Calling the About method at the end of a script is currently the only way to keep Juke running after the script that created the Juke application object exits. If you do not call About, Juke will close automatically at the termination of the script or when all references go out of scope.


Player Object

Property of Application.

Events | none
Properties | none
Methods
Pause
Pauses the currently playling track.
Play
Plays the current track.
Stop
Stops the currently playing track.


Playlist Object

Property of Application.

Events | none
Properties | none
Methods
Add
Adds a track to the Juke playlist.
Load
Loads a playlist from a file.
RemoveAll
Removes all tracks from the playlist.


Application.Version property

Version

Property of Application.

Returns a String indicating the current version of Juke.

Syntax Application.Version
Remarks

The current version of Juke v3.5 returns the string "3.5".
Example var app = new ActiveXObject( "Juke.Application" );
app.Visible = true;


Application.Visible property

Visible

Property of Application.

Returns a Boolean value indicating if the Juke application window is visible on the desktop or hidden.

Syntax Application.Visible
Remarks

If you create the JukeScript application object using the CreateObject (VBScript) or ActiveXObject (JScript) function, then Juke will start initially hidden. If you wish to allow user interaction, you must set the Visible property to True.

True | The Juke window is visible on the desktop. This flag may true even if the Juke window is completely covered with other desktop windows, in which case it is not actually visible to the user.
False | The Juke window is hidden.
Example var app = new ActiveXObject( "Juke.Application" );
app.Visible = true;


Playlist.Add method

Add

Method of Playlist.

Adds a track to the Juke playlist

Parameters
FileName
File name of the track which to add to the playlist
Syntax | Playlist.Add( FileName )
Remarks | The track will be appended to end of the playlist.
Example var app = new ActiveXObject( "Juke.Application" );
var playlist = app.Playlist;
playlist.Add( "C:\\Sounds\\MySong.mp3" );


Playlist.Load method

Load

Method of Playlist.

Loads a playlist from a file.

Parameters
FileName
File name of the playlist file to load
Syntax | Playlist.Load( FileName )
Remarks | This replaces the current playlist. If there is currently a song playing, it will be removed form the playlist, but it keeps on playing.
Example var app = new ActiveXObject( "Juke.Application" );
var playlist = app.Playlist;
playlist.Load( "C:\\Sounds\\MyList.alb" );


Playlist.RemoveAll method

RemoveAll

Method of Playlist.

Removes all tracks from the playlist.

Parameters | none
Syntax | Playlist.RemoveAll()
Example var app = new ActiveXObject( "Juke.Application" );
var playlist = app.Playlist;
playlist.RemoveAll();


Player.Pause method

Pause

Method of Player.

Pauses the currently playing track.

Parameters | none
Syntax | Player.Pause()
Remarks | Call Play to resume from the current position.


Player.Play method

Play

Method of Player.

Plays the track that is currently selected in the playlist. If the player is in pause state, playback resumes from the current position.

Parameters | none
Syntax | Player.Play()
Example var player = app.Player;
player.Play();
player.Pause();
player.Play();
player.Stop();
See also Player Object
Player.Stop


Player.Stop method

Stop

Method of Player.

Stops the currently playing track and resets the position to the beginning of the track.

Parameters | none
Syntax | Player.Stop()


JukeScript Test Page

Juke Remote Control

Select a media file

View Page Source


JukeScript Test Page Source

<HTML>
<HEAD>
<Title>JukeScript Test Page</Title>
<SCRIPT>
var JukeApp = new ActiveXObject( "Juke.Application" );
if( JukeApp == null )
    alert( "Cannot run Juke." );

function OnPlay( filename ) {
  JukeApp.Playlist.RemoveAll();
  JukeApp.Playlist.Add( filename );
  JukeApp.Player.Stop();
  JukeApp.Player.Play();
}
</SCRIPT>
</HEAD>

<BODY>
<H2><IMG SRC="juke.gif">
Juke Remote Control</H2>

<FORM NAME="Control">
<TABLE BORDER="2">
  <TR BGCOLOR="gray">
    <TD>
      <P>
        <FONT COLOR="white"><B>Select a media file<BR></FONT>
        <INPUT TYPE="FILE" SIZE="25" NAME="FileName">
      </P>
    </TD>
  </TR>
  <TR BGCOLOR="gray">
    <TD>
      <P>
        <INPUT TYPE="BUTTON" VALUE="Play" onClick="OnPlay( this.form.FileName.value );">
        <INPUT TYPE="BUTTON" VALUE="Pause" onClick="JukeApp.Player.Pause();">
        <INPUT TYPE="BUTTON" VALUE="Stop" onClick="JukeApp.Player.Stop();">
      </P>
    </TD>
  </TR>
</TABLE>
</FORM>

</BODY>
</HTML>